1. Field of the Invention
This invention relates to electronic data processing systems and more particularly to integrated circuit computer.
2. History of the Prior Art
The computer prior art is characterized by computer architectures that are not adapted to fully integrated circuit computers. Such prior art architectures are configured around non-volatile electrically alterable memories such as core memories which are large, power consuming, expensive and are not conveniently miniaturized nor batch fabricated as possible with integrated circuit processes. Prior art systems have been configured around such core memory type computers, thereby constraining system architecture by computer architectural limitations.
A further discussion of the prior art is set forth in parent application Ser. No. 101,881 as-amended at page 1 line 29 to page 3 line 29; which discussion is herein incorporated by reference.
Digital computers have been widely used for complex computational and processing applications but have only started to be used in the less sophisticated business and industrial applications and have not been used in consumer-type applications. High cost and complexity of computer systems are two of the main reasons for these limitations in computer applications. A computer is not a useful device by itself because it must be contained in a system with input and output devices in order to interact with the outside environment. Unnecessary complexity has resulted in the prior art, both in configuring the computer and in configuring the system. This complexity has resulted in high costs and other effects of complexity. A comprehensive discussion of the prior art is presented to illustrate the reason for this prior art computer system complexity to provide a basis for discussing this invention.
Computers are basically numerical computation devices and, before they can be useful, it is necessary to provide a suitable mechanism to supply input digital data to the computer upon which computations are to be performed in response to the computer's stored program and also to provide suitable output mechanisms for removing the computer digital data from the computer system known to those skilled in the art as peripheral equipment. Typically, such peripheral subsystems are self-contained, stand-along devices which operate "off-line" from the computer and which are physically and operationally separate and identifiable from the actual data processing subsystem within the computer system. A typical input peripheral subsystem might be a punched tape reader, a control panel, a high-speed punched card reader, a magnetic tape reader, a typewriter or the like. A typical output peripheral subsystem might be a typewriter, a high-speed line printer, a visual display device such as a cathode ray tube or an array of alpha numeric tubes or some form of servo system which enables the computer to control some physical or mechanical device.
In the prior art, the actual data processor subsystem and the peripheral subsystem have usually been designed separately in the belief that this enabled each to perform its particular function in the system in an optimum manner. Each subsystem is designed to operate in its own particular signal format which is usually intrinsic to that particular subsystem. For example, the actual data processor or central computer in the system is usually designed to operate from whole words, each consisting of many bits in parallel, and to perform the computations within the data processor subsystem at the extremely high rates of speed which pure electronic devices can achieve. In contrast to this, most peripheral subsystems include moving mechanical components which limit their rates of speed to much lower rates, usually several orders of magnitude lower than the speed of purely electronic data processing subsystems. In addition, depending upon its physical nature, each particular peripheral subsystem usually dictates a particular signal format in which it operates. For example, an input peripheral subsystem such as a punched tape reader or a typewriter supplies sequential information in a particular format and at rates largely determined by the mechanical characteristics of the input peripheral subsystem. Output peripheral subsystems such as typewriters, high-speed line printers, servo systems or the like in turn require that control signals having particular formats adapted to the particular output peripheral subsystem be applied to the peripheral subsystem in order that the subsystem perform its function in the system in an optimum manner.
Since the central data processor subsystem operates in its signal format and each of its input and output peripherals operates in its own signal format which is practically always different from the signal format of the central data processor, some means must be provided to translate between these various signal formats in order that the peripheral subsystems can provide their intended function of providing input signals to the computer and extracting the output signals from the computer. The usual prior art way of effecting this translation is to provide a separate interface unit between each peripheral subsystem and the central data processor subsystem. The necessity of these interface units was not questioned in the prior art. Indeed, it was generally considered that, in addition to the necessary signal translating function, they performed many other useful functions in the system which resulted in an overall simpler and more useful computer system. For example, the interface units served to "buffer" the peripheral subsystem from the central data processor unit to synchronize the operation of the central data processor subsystem and the peripheral subsystem.
Computer designers assigned peripheral tasks to the special-purpose interface units between the peripheral subsystems and the central data processor subsystem in order that input data would be available to the central data processor subsystem in its own desired format at whatever times it desired this information, and that the interface units for the output peripheral subsystems might receive output signals from the computer at the computer's own convenience and in the computer signal format. These interface units usually included many special-purpose logic circuits or devices which were unique to the particular peripheral subsystem associated with that interface unit.
For example, input peripheral subsystems of the type described above develop rudimentary input signals in their own signal format which might include time-ambiguous information. Such rudimentary input signals are customarily preprocessed in the interface unit associated with the peripheral subsystem to provide a signal in central data processor format. Thus, those skilled in the art have not considered the interface units to be merely a necessary evil which must be interposed between the peripheral subsystem and the central data processor subsystem. Instead, such units have been considered to have many positive virtues which enable the overall computer system to perform its overall function in the only feasible manner.
These interface units performed what might be called the communication function of the system. This communication function, both between the central data processor subsystem and the peripheral subsystems and between the system and the "outside world" is largely controlled and performed by these interface units. These communication functions are performed without reference to the data processor's stored program, in an off-line manner. The data processor is thus left to do only its "intended task" of performing computations under control of its stored program, or of performing the computation function in the system.
Because of the high cost of designing and manufacturing an electronic computer, computers have traditionally been designed to perform a large variety of data processing functions, and interfaced peripheral equipment is therefore arranged to permit maximum use of computer time. The interfacing provides signal conditioning, synchronization to the selected intrinsic time base, and transfer of command and data signals. Thus, electronic data processors have been organized on an essentially modular basis, with processor, storage, housekeeping and peripheral modules all committed to a particular machine language, timing and intercommunication format. Electronic data processing systems may be implemented with integrated circuits. However, such systems are not fully integrated circuit or monolithic systems because of requirements for variable as well as constant data storage, and therefore use core or other similar types of storage. The system may be "dedicated" to a particular function, but remains essentially a processor and the significance of dedication is that other capabilities built into the system are unused.
A number of data processing systems are now referred to as including "dedicated" computers. A "dedicated" computer is a general-purpose unit which is "dedicated" to operate only in a particular application. The "dedication" of the computer denotes a limitation on the usage of a computer having a capability to operate in additional applications.
Although a computer dedicated in this sense may be a general-purpose machine of a standard commercial type, substantial peripheral and interface equipment is very often required. For example, completely different control panels may be required for similar but different applications, and this in turn entails the usage of a unique hardwired interface for each control panel in order to make it operate in conjunction with the system.
Control panels in prior art systems are typically an array of panel-mounted components, including switches and lamps, interconnected with discrete wiring and cabling, which is routed to electronics boards. Interlocking and control functions are hardwired as an integral part of the panel. The numerics are either refreshed with hardwired electronics or are not refreshed at all, but latched with redundant electronics. Switches and lamps are often directly connected to various parts of the system to control and monitor hardwired functions. The prior art control panels generally have large bundles of interconnecting cabling resulting in degraded reliability and poor economy coupled with hardwired functions that can only be changed by rewiring and restructuring the system physically, yielding little if any degree of versatility.
The so-called mini-computers now in widespread use are relatively low in cost compared to earlier systems but costs of interfacing and peripheral equipment are often considerably in excess of the cost of a mini-computer itself. By dedicating a computer to a specific application, considerable savings in cost can be realized by using a relatively low cost mini-computer since a computer having large capabilities may not be needed for a specific application. However, the cost of peripheral equipment and necessary interfacing remains substantial. Furthermore, inclusion of this dedication results in loss of general-purpose capabilities of the mini-computer.
Some of the peripheral and interfacing disadvantages have been substantially reduced in some special-purpose machines of which a prominent example is found in numerical control systems. Such systems, however, inherently lack the versatility of systems incorporating general-purpose computers. Consequently in order to incorporate new features or to extend their system versatility, even within a particular application, they must either be significantly redesigned or new subsystems must be added along with appropriate interfacing. Thus, a special-purpose system may not be able to compute a contouring function; and to incorporate such a capability, special-purpose circuitry must be integrated into the system. On the other hand, where a general-purpose computer is used with conventional interfacing to input-output systems, computational and memory capacity may be only partially realized. However, any change of system orientation, such as change or addition of an item of peripheral equipment, still requires conventional interfacing to be added. The prior art is further shown in the prior art reference cited herein.